数据接入能力详细说明
最后于 更新
APO 向导式可观测性平台为用户提供了一站式的可观测性数据展示和分析能力。APO不 仅能够展示通过APO采集器采集到的数据,也能接入已有监控数据,无需对现有监控系统进行大规模改动即可使用现代化的可观测性平台。
APO 支持接入的监控数据按照类型可以分为以下几类:
- 链路追踪
- 指标
- 日志
- 告警事件
链路追踪
APO 提供了 OneAgent 为应用自动注入链路追踪探针,无需用户手动配置。对于Java应用,如果您已经在应用中使用了链路追踪探针,APO 支持采用对接的方式接入已有链路追踪数据,同时能够使用告警分析功能。
接入方案一:使用现有探针,APO 对接链路追踪查询 API
支持的Tracing 系统
- Opentelemetry Java Instrument 1.11.x 以上版本
- SkyWalking 8.x 及以上版本
- PinPoint 1.8.0 及以上版本
- Elastic APM 1.x 版本
对接方 式
- APO 需要在每台主机上安装一个Agent用于获取主机上的进程信息
- APO 服务端需要能够连接 Tracing系统的查询API,用于查询单次链路追踪数据
- 优点:无需改动已有的Tracing系统
- 缺点:仅支持 Java 语言;缺失应用对外调用请求的指标
具体步骤
在安装 APO OneAgent 时采用 trace-sidecar
模式安装,并在安装 APO Server 时提供 Tracing 查询 API 地址。
接入方案二:使用现有探针,将链路追踪数据发送到 APO
支持的 Tracing 探针
- Opentelemetry Java Instrument 1.11.x 以上版本
- SkyWalking 8.x 及以上版本
- 其他支持采用 OTLP 格式输出 Traces 数据的探针
对接方式
- APO 需要在每台主机上安装一个 Agent 用于获取主机上的进程信息
- 将探针数据发送地址修改为本机的 APO OneAgent 地址
- 优点:支持Java、Go、Python等各类编程语言;能够使用APO的全量功能
- 缺点:需要调整Tracing探针数据的发送地址
具体步骤
在安装 APO OneAgent 时采用 trace-collcetor
模式安装,随后将现有探针的数据发送地址修改为 APO 的收集器地址,具体为:
- 对于支持 OTLP 格式输出的 Traces 数据:
- 如果您使用 gRPC 协议发送数据,请使用
http://<本机IP>:4317
- 如果您使用 HTTP 协议发送数据,请使用
http://<本机IP>:4318
- 如果您使用 gRPC 协议发送数据,请使用
- 对于 SkyWalking:
- 如果您使用 gRPC 协议发送数据,请使用
http://<本机IP>:11800
- 如果您使用 HTTP 协议发送数据,请使用
http://<本机IP>:12800
- 如果您使用 gRPC 协议发送数据,请使用
指标
APO 通过 OneAgent 能够自动采集环境中的指标数据,并存储到 VictoriaMetrics 中。默认情况下,会采集以下指标:
- node-exporter:主机层面指标
- cadvisor:容器层面指标
- kubelet:Kubernetes 中 kubelet 指标
由于采集和存储此类指标的资源消耗较小,建议直接采用 APO OneAgent 采集此类数据。如果您已经采集以上指标并存储到了类 Prometheus 数据库中,期望不使用 APO OneAgent 再次采集数据,APO也支持对接已有的类 Prometheus 数据库。
接入方案一:APO 平台对接已有指标存储系统
支持的存储系统
- Prometheus
- VictoriaMetrics
- Thanos
对接方式
- 在安装 APO 时修改 VictoriaMetrics 地址为类 Prometheus 数据库地址(支持Prometheus与VictoriaMetrics),参见对接文档
- 如果您不需要重复采集以上指标,请在安装时禁用 APO OneAgent 的
metrics
模块